home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Toolbox / Visual Basic Toolbox (P.I.E.)(1996).ISO / buttons / toolb160 / readme.1st < prev    next >
Text File  |  1995-09-24  |  24KB  |  464 lines

  1. TOOLBARS VERSION 1.60 (UNLICENSED EVALUATION VERSION)
  2.  
  3.            Two controls for Visual Basic that allow easy creation
  4.            of button-bars and status-bars in any Visual Basic for
  5.            Windows (version 3.0 or higher) application.
  6.  
  7. 0. IMPORTANT NOTICE
  8.  
  9.            This is the last version of the TOOLBARS.VBX that will
  10.            be sent out into the world for free use in FreeWare or
  11.            Public Domain applications. All new features that will
  12.            be built in after this release, will only be included
  13.            in commercial or ShareWare versions (see 11 and 12).
  14.            Of course, if there are any bugs in this release, an
  15.            update will be released.
  16.  
  17.  
  18. 1. GENERAL INFORMATION
  19.  
  20.  
  21.            The TOOLBARS.VBX contains two custom controls for
  22.            Visual Basic: StatusBar and ButtonBar. Both controls
  23.            have an integrated helpfile that can be called from the
  24.            VB development environment when you press F1 in the
  25.            properties-window or when you select an event in the
  26.            code window. There are also some ready to use examples
  27.            in the helpfile. Therefore this documentation-file is
  28.            very brief.
  29.            If you have a problem with (one of these) controls, or
  30.            think of an enhancement that I don't already have
  31.            planned (see the 'future enhancements' section below),
  32.            please e-mail to the special account that has been set
  33.            up for this purpose: vbx_dev@shear.iaf.nl.
  34.  
  35.  
  36. 2. SHORT DESCRIPTION OF VERSION 1.0 FEATURES
  37.  
  38.            The StatusBar control allows you to create a statusbar
  39.            at the top or bottom of the client area of your
  40.            application to display status-messages. It offers 20
  41.            fully configurable text-fields and a few other extras
  42.            as well. Here's a quick summation:
  43.            -    automatically adjusted border-line for different
  44.                 alignments (top, bottom or none)
  45.            -    automatically size one field (ExpandField
  46.                 property) to fill the entire status-area (can be
  47.                 turned off). If the window is resized, one of the
  48.                 statusbar fields is resized as well.
  49.            -    can be used as a progress indicator (FloodField,
  50.                 FloodInvertText, FloodPercent, FloodShowPct,
  51.                 FloodColor properties). Absolutely no flickering
  52.                 on updates.
  53.            -    adjustable left- and right-margins (LeftMargin and
  54.                 RightMargin property
  55.            -    etc...
  56.  
  57.            Text-field specific properties:
  58.            -    alignment (left, right or centered) (Alignment
  59.                 property array)
  60.            -    font-color (ForeColor property array)
  61.            -    message (the text to display in the text-field)
  62.                 (Message property array)
  63.            -    field type (FieldType property array)
  64.                 Field-types are:
  65.                 - normal (display text in Message property)
  66.                 - clock (type-of clock can be set with the
  67.                   with ClockFormat property)
  68.                 - num-lock indicator (user-definable text for
  69.                   on- and off state)
  70.                 - scroll-lock indicator    (    "   "     )
  71.                 - caps-lock indicator      (    "   "     )
  72.            -    field width (FieldWidth property array)
  73.            -    define spacing between fields (SpaceAfter property
  74.                 array)
  75.            -    control type (for TypeOf statements): StatusBar
  76.            -    etc...
  77.  
  78.            The ButtonBar control allows easy creation of a
  79.            buttonbar at the top or bottom of the client area of
  80.            your application. You only have to specify a picture
  81.            for the button to create it. The ButtonBar
  82.            automagically creates the needed bitmaps for the down
  83.            and disabled states for the button with the picture you
  84.            specify. It's also possible to specify a picture for
  85.            the disabled state of the button if you don't like the
  86.            ButtonBar's disabling method. Summation of features:
  87.            -    automatically adjusted border-line for different
  88.                 alignments (top, bottom or none)
  89.            -    create buttons by simply specifying one or two
  90.                 bitmaps for the up-state of the button (Picture
  91.                 and PictureDisabled property arrays).
  92.            -    2 types of buttons available: normal and 2-state
  93.                 (ButtonType property array)
  94.            -    group buttons into GroupPushButtons (ButtonGroup
  95.                 and GroupAllowAllup property arrays)
  96.            -    enable or disable individual buttons
  97.                 (ButtonEnabled property array)
  98.            -    connect the ButtonBar to the StatusBar to display
  99.                 a message in a textfield when a user selects a
  100.                 button (hWndStatusBar and StatusField properties,
  101.                 and the ButtonMessage property array).
  102.            -    define spacing between buttons (SpaceAfter
  103.                 property array)
  104.            -    control type (for TypeOf statements): ButtonBar
  105.            -    etc...
  106.  
  107.  
  108. 3. WHAT WAS NEW IN VERSION 1.1 ?
  109.  
  110.            Two bugs were fixed:
  111.            -    when setting the ClockFormat property for the
  112.                 StatusBar control to an AM/PM  clock, the AM/PM
  113.                 time-indication wasn't properly updated at 12 noon
  114.                 and 12 o'clock midnight. This bug has been fixed.
  115.            -    the ButtonBar control released the mouse capture after
  116.                 the Click event. This is no problem if you don't show
  117.                 modal forms on a click on a button, but when you do
  118.                 display a modal form on a click, this window can't
  119.                 receive the input-focus. This bug has been fixed by
  120.                 releasing the mouse capture before firing the click
  121.                 event.
  122.  
  123.            Three new properties and a new event were added to the
  124.            StatusBar:
  125.            -    toggle event: this event is fired whenever the num-lock
  126.                 caps-lock or scroll-lock key is pressed. It helps you
  127.                 to keep track of the status of these keys, for example
  128.                 when you're writing a text-editor.
  129.            -    AutoToggle allows users to double-click on a num-lock,
  130.                 caps-lock or scroll-lock field. The statusbar control
  131.                 automatically sets or resets the state of the toggle-key.
  132.            -    Numlock, Capslock and ScrollLock properties allow you to
  133.                 get or set the status of the num-lock, caps-lock or
  134.                 scroll-lock keys.
  135.  
  136.            The ButtonBar also has a new feature:
  137.            -    The OutlineChildren automatically gives a three-D
  138.                 outline to controls placed on the buttonbar, to make
  139.                 them look raised or inset.
  140.  
  141.            Also, some very stupid mistakes were corrected:
  142.            -    The Enabled property was added to the StatusBar
  143.            -    The Visible and Enabled properties were added to
  144.                 the ButtonBar
  145.  
  146.  
  147. 4. WHAT WAS NEW IN VERSION 1.2 ?
  148.  
  149.            Another bug was fixed:
  150.            -    after clicking on a button of the ButtonBar, the
  151.                 button remained down if the programmer had a DoEvents()
  152.                 statement in the code under the click event. This was
  153.                 caused by an extra WM_MOUSEMOVE that was generated as
  154.                 a result of the DoEvents().
  155.  
  156.            There were no changes to the StatusBar, but the ButtonBar had
  157.            a lot of new things:
  158.            -    Real tooltips. To avoid problems with naming copyrights,
  159.                 the ButtonBar calls these Button/ControlHints. You can
  160.                 specify a Hint for each button you define and each control
  161.                 you place on the ButtonBar. A bunch of properties were added
  162.                 to control the position and look of the Hint-popup window
  163.                 (Font-properties, HintBackColor, HintDelay, HintPosition,
  164.                 HintOffsetX, HintOffsetY, ButtonHint property array for
  165.                 specifying hints for buttons, ControlHwnd and ControlHint
  166.                 properties for specifying hints for controls.
  167.            -    The ShowButtonMessage properties allows you to control when
  168.                 to display the ButtonMessages in the StatusBar (when the
  169.                 mouse is over a button, when you select the button or
  170.                 when you click the button with the right mouse-button).
  171.            -    The minimum height of the ButtonBar depends on the size of
  172.                 the pictures you use for the buttons, but the ButtonBar
  173.                 added a small border around that. This border has been
  174.                 narrowed down to one pixel.
  175.            -    The number of available buttons and controls placed on the
  176.                 ButtonBar has been increased to 30.
  177.            -    All buttons are automatically disabled when the ButtonBar
  178.                 is disabled and are enabled again if the ButtonBar is
  179.                 enabled. This was the case already, but now the user gets
  180.                 some visual feedback as well (the buttons look disabled).
  181.            -    There are now properties to support all states of a button.
  182.                 The PictureDown and PictureDisabledDown property arrays
  183.                 allow you to completely define all states a button can have.
  184.  
  185.            Also, the helpfile was enhanced and now included an example
  186.            of how to use the ButtonBar together with the PictureClip control
  187.            that comes with Visual Basic.
  188.  
  189. 5. WHAT WAS NEW IN VERSION 1.3 ?
  190.  
  191.            Two bugs were fixed:
  192.            -    The ButtonBar erroneously displayed the ButtonHints                button remained down if the programmer had a DoEvents()
  193.                 even if another window had captured the mouse (for example
  194.                 if you pulled down a menu over the ButtonBar). This has
  195.                 been fixed.
  196.            -    The ButtonBar only displayed control-hints if the Outline-
  197.                 Children property was set to anything but zero. This also
  198.                 has been fixed.
  199.  
  200.            One new property was added to the StatusBar:
  201.            -    The FieldOutline property arrays lets you define the
  202.                 way fields look on the StatusBar (raised, inset or
  203.                 no outline at all).
  204.  
  205.            The ButtonBar has a number of new features:
  206.            -    The ShowButtonMessage was renamed to ShowStatusMessage.
  207.                 You can now also synchronize the StatusBar messages and
  208.                 the Button/ControlHints by setting the ShowStatusMessage
  209.                 property to 4 (=Together with Hint).
  210.            -    MAJOR IMPROVEMENT: It is now possible to store a bitmap
  211.                 containing all the tiny bitmaps needed for defining the
  212.                 buttons on the ButtonBar in the ButtonBar control.
  213.                 You can do this with the ButtonPictures property. The
  214.                 ButtonRows and ButtonColumns properties allow you to define
  215.                 the number of rows and columns of button-pictures in the
  216.                 bitmap. After that you can use the ButtonPicture property
  217.                 array to retreive the tiny bitmaps from the big bitmap
  218.                 and set the Picture(), PictureDown() etc property arrays
  219.                 from them.
  220.                 This means that it is no longer necessary to load all the
  221.                 tiny bitmaps from disk, since the bitmap in the Button-
  222.                 Pictures property is saved within your application.
  223.                 A further advantage is that you can easily define all
  224.                 buttons on the ButtonBar in a single for-loop.
  225.                 For details and an example, see the help-file.
  226.            -    For convenience, this release of TOOLBARS.VBX also contains
  227.                 a Visual Basic program (only source code, you'll have to
  228.                 compile it yourself) that allows you to create a large
  229.                 bitmap from several tiny ones. It includes loading and
  230.                 saving of the bitmap-positions you've defined, an auto-
  231.                 grid (so the tiny bitmaps will fit nicely together) and
  232.                 fully automatic generation of the large bitmap. For
  233.                 instructions how to use the sample application, see the
  234.                 readme file in the self-extracting zip-file.
  235.  
  236.            Also, the helpfile was modified. The PicClip example was removed
  237.            and replaced by a ButtonPictures example.
  238.  
  239.  
  240. 6. WHAT WAS NEW IN VERSION 1.4 ?
  241.  
  242.            Three bugs were fixed:
  243.            -    The ButtonBar behaved strange if you had more than one
  244.                 in your project. This has been fixed.
  245.            -    If your code had an Unload statement in the code following
  246.                 a click on a field of the StatusBar or a button on the
  247.                 ButtonBar, VB crashed. This has also been fixed.
  248.            -    A lot of properties-values (including the FieldWidth and
  249.                 SpaceAfter properties) couldn't exceed the value 127.
  250.                 This was because of some crummy optimization I had built
  251.                 in. This has been removed. The maximum value is now 32767.
  252.  
  253.            Also, some errors in the helpfile were corrected.
  254.  
  255.            One property was removed and four new properties were added
  256.            to the StatusBar. All the font related properties were changed
  257.            to property arrays.
  258.            -    The biggest improvement is the FieldProperties property.
  259.                 This property has no value, but instead, pops up a dialog
  260.                 box were you can define all field-related properties during
  261.                 design time. So you don't need to do any coding anymore to
  262.                 completely define your StatusBar.
  263.            -    The AdjustFieldHeight property makes all fields on the
  264.                 StatusBar equal in height or adjusts the height of a field
  265.                 according to the fontsize of that field.
  266.            -    The BackColor property array allows you to define a different
  267.                 background color for each text-field.
  268.            -    The FIELD_CLOCK FieldType has changed to a FIELD_DATETIME.
  269.                 So now you can not only show the time but also the date.
  270.            -    To support the new date/time field properly, the ClockFormat
  271.                 property was removed and the DateTimeFormat property array
  272.                 was added. This allows you to define a different format for
  273.                 each date/time field you may have on the StatusBar. The
  274.                 DateTime format property handles all strings for formatting
  275.                 dates and times that are supported in the Visual Basic
  276.                 Format$ function.
  277.            -    All text-fields now have font related properties of their
  278.                 own. The FontName, FontSize, FontBold etc. properties have
  279.                 been chang to control-arrays.
  280.  
  281.            The ButtonBar has only one new property:
  282.            -    The ButtonProperties property. Like the FieldProperties
  283.                 property in the StatusBar, this property has no value,
  284.                 but pops up a dialog box were you can define all button-
  285.                 related properties during design time. So you don't need
  286.                 any coding anymore to define your ButtonBar.
  287.  
  288.  
  289. 7. WHAT WAS NEW IN VERSION 1.47?
  290.  
  291.            Three bugs in the ButtonBar were fixed:
  292.            -    For some reason, the ButtonEnabled property didn't function
  293.                 properly anymore. The button looked disabled, but could be
  294.                 pressed like any other button. This was fixed.
  295.            -    On some systems, using the ButtonProperties dialog, caused
  296.                 VB to crash. This was fixed as well (thank you beta-testers).
  297.            -    The ButtonMessage for disabled buttons, was displayed in
  298.                 the StatusBar, but never removed. This was fixed also.
  299.  
  300.            New features:
  301.            -    Enhanced ButtonProperties and FieldProperties dialogs
  302.                 The ButtonProperties and FieldProperties, used for setting
  303.                 almost all of the property arrays of the Button- and
  304.                 StatusBar, have been enhanced. To the right of the list
  305.                 containing all the buttons/fields are four new buttons.
  306.                 These buttons allow you to insert, delete and reposition
  307.                 the buttons/fields on the Button/StatusBar.
  308.                 The ButtonProperties dialog has also been extended to enable
  309.                 you to make a connection between the ButtonBar and an exis-
  310.                 ting StatusBar at design time. Also, it is now possible to
  311.                 select a picturefile from disk in the ButtonProperties
  312.                 dialog.
  313.  
  314.           New Properties for the ButtonBar control:
  315.           -     ButtonVisible property array
  316.                 This property allows you to make buttons visible/invisible
  317.                 at run-time.
  318.           -     IgnoreInvisibleButtons property
  319.                 Use this property to specify if the remaining buttons should
  320.                 shift to the left or right whenever a button on the ButtonBar
  321.                 is made (in)visible.
  322.           -     ShowDisabledMessages/ShowDisabledHints properties
  323.                 These properties allow you to specify whether or not the
  324.                 ButtonBar should display Button/ControlMessages or Button/
  325.                 ControlHints for disabled buttons or controls.
  326.  
  327. 8. WHAT WAS NEW IN VERSION 1.48/1.49
  328.  
  329.           A few bugs in ButtonBar were fixed:
  330.           -     The IgnoreInvisibleButtons property didn't function properly.
  331.                 After setting the property to True and after that closing
  332.                 and reopening the form displayed a gray box in the upper
  333.                 left corner of the ButtonBar. This has been fixed
  334.           -     The slider in the ButtonProperties dialog didn't work
  335.                 correctly for large buttons. This has been fixed as well.
  336.          -      The 1.47 version behaved erroneously if a StatusBar was
  337.                 coupled to the ButtonBar with the ButtonProperties dialog.
  338.                 It could even cause VB to crash. This has been fixed.
  339.  
  340.           The StatusBar had one new property and a new event:
  341.           -     MenuTagsField property
  342.                 This property tells the StatusBar to monitor menu-browsing
  343.                 on the form the StatusBar is placed upon. If a user selects
  344.                 a menu-item the StatusBar obtains the text from the Tag
  345.                 property of that menu-item and displays it in the field
  346.                 specified by the MenuTagsField property.
  347.           -     SysMenuBrowse Event
  348.                 This event occurs whenever the MenuTagsField property is
  349.                 set to something other than -1 and a user is browsing
  350.                 through the system-menu. Since the system-menu of each form
  351.                 doesn't have a Tag property, the StatusBar fires an event,
  352.                 specifying the currently selected item from the system
  353.                 menu. By modifying the Message parameter of the event, you
  354.                 can specify a message for each system-menu item.
  355.  
  356. 9.  BUG FIXES IN VERSION 1.5(5)(60)
  357.            Some minor bugs in the StatusBar and the ButtonBar were fixed.
  358.            Also, version 1.6 fixes a problem that locks up your system if
  359.            you used the StatusBar together with a subclassing control
  360.            such as the MessageBlaster or CSForm.
  361.  
  362. 10. KNOWN PROBLEMS/BUGS
  363.  
  364.            None at the moment. If you find any however, please
  365.            inform me at the e-mail address mentioned earlier in
  366.            this file.
  367.  
  368.  
  369. 11. FUTURE ENHANCEMENTS
  370.  
  371.            Some suggestions and remarks have made clear that there
  372.            is at least one possible future enhancement for
  373.            the StatusBar control:
  374.            -    pictures for a field instead of only a text (Something
  375.                 like a FieldPicture property array).
  376.  
  377.            The ButtonBar control als has some extra features I'm
  378.            considering to implement:
  379.            -    moveable/floatable buttonbar (like the ones in Word 6.0)
  380.            -    alignment at the top, bottom, left and right of
  381.                 the form.
  382.  
  383.            If you have more suggestions or remarks, let me know.
  384.  
  385.  
  386. 12. ARCHIVE CONTENTS AND INSTALLATION NOTES
  387.  
  388.            This archive's original name is TOOLB146.ZIP and contains
  389.            the following files:
  390.  
  391.            TOOLBARS.VBX   The toolbars vbx-library.
  392.            TOOLBARS.HLP   Design time helpfile.
  393.            ORDER.FRM      Order form
  394.            README.1ST     This file
  395.            MKBITMAP.EXE   A self-extracting archive containing the
  396.                           BUTTONS.BMP file and the bitmap creator Visual
  397.                           Basic program
  398.  
  399.            In order to use the toolbars vbx you must copy the
  400.            file TOOLBARS.VBX to your Windows system directory. To be able
  401.            to use the design time help, you have to copy the TOOLBARS.HLP
  402.            file to the Visual Basic directory. If you want to use the
  403.            bitmap creation sample application, just executable the
  404.            MKBUTTON executable.
  405.  
  406.  
  407. 13. DISCLAIMER
  408.  
  409.            The TOOLBARS.VBX control library is distributed "as is"
  410.            and without warranties as to performance or
  411.            merchantability or any other warranties whether
  412.            expressed or implied. No warranty of fitness for a
  413.            particular purpose is either expressed or implied.
  414.  
  415.  
  416. 14. LICENSE AGREEMENT AND COPYRIGHT
  417.  
  418.            In this notice, "The controls" refers to the
  419.            TOOLBARS.VBX custom controls library for Visual Basic
  420.            and the "the author" refers to SheAr software.
  421.  
  422.            The control is copyright (C) 1995 by the author. You may
  423.            distribute this control only with FreeWare of Public
  424.            Domain applications without any charge. If you like these
  425.            controls and would like to use it in a commercial or shareware
  426.            application, you have to pay for it.
  427.  
  428.  
  429. 15. ORDERING INFORMATION
  430.  
  431.            The licensing fee for a commercial of shareware version
  432.            is 25 Dutch guilders (approx. 17 US Dollars) for a shareware
  433.            version and 50 Dutch guilders (approx. 35 US Dollars) for a
  434.            commercial version. To order, send the included order form
  435.            (remember to sign it) to the address mentioned in the form.
  436.  
  437.            Benefits of buying the TOOLBARS.VBX:
  438.            - You'll receive two versions of the VBX, one for you to use
  439.              in the Visual Basic design time environment. Another one,
  440.              significantly smaller but not usable in the VB design time
  441.              environment, to distribute with your applications.
  442.            - A printed manual.
  443.            - One year unlimited free support. Either by mail, e-mail or
  444.              telephone.
  445.            - One year of free updates. Whenever a new version gets out
  446.              or a bug has been reported, you'll receive detailed work-
  447.              around information or a new version by mail or e-mail.
  448.            - Finaly, the 'nag-screen' (the about box that comes up
  449.              in the VB development environment) won't be present in the
  450.              licensed version (of course).
  451.  
  452.  
  453. 16. FURTHER NOTES
  454.  
  455.            This is the nineth release of TOOLBARS.VBX. Although
  456.            all major bugs have been fixed, It's still not guaranteed
  457.            to be error-free, but I think it works pretty well.
  458.            If you wish to use it in your applications (subject to
  459.            the above restriction), you may do so.
  460.  
  461.            Arjen Broeze
  462.            vbx_dev@shear.iaf.nl
  463.            09/02/95
  464.